package com.ruoyi.system.domain.bo;

import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

/**
 * 会员订单业务对象 p_vip_order
 *
 * @author ruoyi
 * @date 2022-09-02
 */

@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel("会员订单业务对象")
public class PVipOrderBo extends BaseEntity {

    /**
     * 订单号
     */
    @ApiModelProperty(value = "订单号", required = true)
    private Long vipOrderId;

    /**
     * 支付金额
     */
    @ApiModelProperty(value = "支付金额", required = true)
    @NotNull(message = "支付金额不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal payPrice;

    /**
     * 支付状态 0 待付款 1 已付款
     */
    @ApiModelProperty(value = "支付状态 0 待付款 1 已付款", required = true)
    @NotBlank(message = "支付状态 0 待付款 1 已付款不能为空", groups = { AddGroup.class, EditGroup.class })
    private String status;

    /**
     * 购买的会员等级
     */
    @ApiModelProperty(value = "购买的会员等级", required = true)
    @NotBlank(message = "购买的会员等级不能为空", groups = { AddGroup.class, EditGroup.class })
    private String vipValue;

    /**
     * 用户ID
     */
    @ApiModelProperty(value = "用户ID", required = true)
    @NotNull(message = "用户ID不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long userId;


}
